<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
    <link rel="icon" href="../images/logo/logo.png" type="image/x-icon">
    <link rel="shortcut icon" href="../images/logo/logo.png"
          type="image/x-icon">
    <title>浏阳德塔软件开发有限公司 女娲计划</title>
</head>
<body style="Max-width: 700px; text-align:center; margin:auto;">
<div style="text-align:left; Max-width: 680px; margin-left:15px;">
    <a href="../">上一页</a>
    <br/>
    <br/>
    <br/>第二章 Java 数据分析算法引擎系统
    <br/> 作者: 罗瑶光, Author:Yaoguang.Luo<br/>
    <br/>
    <br/>基础应用: 元基催化与肽计算 编译机的仿生分析机
    <br/>


    <br/>
    两种比较领先的排序思维对比 <br/>
    <br/>
    罗瑶光手稿 <br/>
    <br/>
    今天我有阅读了一种这几年比较流行的快速排序思想, 基于中轴分离进行左右分配的数列递归排序法.
    地址: <br/>
    <br/>
    github 上的 dongxingrong. 我仔细的研究了下, 发现有几个地方可取, 于是进行评价: <br/>
    <br/>
    地址:
    https://github.com/dongxingrong/QuickSort/blob/master/src/QuickSort.java
    <br/>
    <br/>
    我思考了很久, 在同频算子减少的方向中, 直接减少 temp 的 swap 变量是一种先进的思想.
    但是利弊交错, 我进行了和我的 4
    代小高峰过滤快排做了详细对比: <br/>
    <br/>
    1000 万数列排序 瑶光高峰过滤 xingrong 中轴分配 <br/>
    <br/>
    算子减少 有 有 <br/>
    <br/>
    条件减少 有 有 <br/>
    <br/>
    离散效率 高 中 <br/>
    <br/>
    条件过滤 有 无 <br/>
    <br/>
    高频降解 无, 高频优先 有 <br/>
    <br/>
    计算性能 高 高 <br/>
    <br/>
    代码缩进 有 有 <br/>
    <br/>
    平均高峰先排耗时 1137 毫秒 1186 毫秒 <br/>
    <br/>
    平均分配先排耗时 1072 毫秒 1178 毫秒 <br/>
    <br/>
    <img class="banner_img" style="width: 100%" src="../images/5_7108/2/2_15.jpg"
         alt="浏阳德塔软件开发有限公司,罗瑶光"/>

    注解: 这里的函数效率是指单个函数运行的计算消耗, 包括堆栈消耗, 内存阻塞, 计算耗时等因素.
    计算性能指的是数组的最大长度, 单位消耗的时间, 内存大小. <br/>
    <br/>
    比较可以发现, 因为递归的小高峰的存在, 中轴心分配所需要的位移变换成为了必要执行功能,
    增大了开销, 这种开销可以最大限度的达到 balanced 递归逻辑的层数, 但是对于指数方的多维
	算子条件缺少了过滤层, 所以, 性能耗损大. 这种排序思想是完美的, 为追求完美, 丢失了一些
	东西, 比较可惜. 但是这种思想需要进行解析, 在很多算法应用领域有宝贵的价值.
    <br/>
    <br/>
    关于看了dongxinrong的无condition条件排序对比, 作者当时随便github搜 天下第一排序法,
    世界最快排序法 等关键字 搜的, 目的是进行速度pk, 看自己的算法斤两, 今天看了下(20220330)
	思考一个问题, 排序中的剔除IF 条件, 作者认为, if 用中文理解, 可以定义为某种事件, 确切的
	说是某种确切的事件, 因为是确切, 所以没有概率, 没有条件, 必然执行, 或者执行了也不会影响本身,
	可以理解为容错率, 这种特性, 在一些场景中, 一定有可以用得到的地方. 作者期待中, 希望能够遇到.
    后面必然是一个世界. <br/>
    <br/>
    描述人罗瑶光 <br/>
    <br/>
    下面的 4 张图是堆 1000 万个随机数进行排序的比较耗时测试. <br/>
    <br/>
    图篇的pk测试对比中出现的贝尔实验室的快速排序是标准的 算法导论中出现 4代排序算法. <br/>
    <br/>
    对比的作者的算法, 当时已经添加了 小高峰左右比对法, 因为图片是很早版本, 还没有进行离散优化
    和 算子过滤优化. 但当时性能对比优势已经明显. <br/>
    <img class="banner_img" style="width: 100%" src="../images/5_7108/2/2_16.jpg"
         alt="浏阳德塔软件开发有限公司,罗瑶光"/>
    <br/>
    上图为作者2014年和贝尔atnt的霍尔排序比较 <br/>
    <br/>
    下图为作者和Github推荐的快速排序比较 <br/>
    <br/>
    <img class="banner_img" style="width: 100%" src="../images/5_7108/2/2_17.jpg"
         alt="浏阳德塔软件开发有限公司,罗瑶光"/>


</div>
</body>